package com.example.bo.homeclass.recyclerview;

import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;


import com.example.bo.homeclass.R;

import java.util.List;

public class RecyclerViewAdapter
        extends RecyclerView.Adapter<ItemViewHolder>  {

    private List<DataItem> dataItemList;
    public void setData(List<DataItem> dataItemList){
        this.dataItemList=dataItemList;
        notifyDataSetChanged();
    }


    @NonNull
    @Override
    public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
        // 获取 LayoutInﬂater 对象，它可以根据布局定义的内容⽣生成⼀一个 View 对象
        LayoutInflater layoutInﬂater = LayoutInflater.from(viewGroup.getContext());
        // ⽣生成 View 对象，
        View itemView = layoutInﬂater.inflate(R.layout.item_layout, viewGroup, false);

        // 实例例化⼀一个 ViewHolder
        ItemViewHolder viewHolder = new ItemViewHolder(itemView);
        // 返回 ViewHolder
        return viewHolder;
    }

    @Override
    public void onBindViewHolder(@NonNull ItemViewHolder itemViewHolder, int i) {
        // 说明： i 是数据项的位置，决定了了显示的次序， i==0 ，就是第⼀一条
        // 获取第 i 条数据
        final DataItem dataItem = dataItemList.get(i);
        // 将第 i 条数据绑定到列列表项（ View ）中。 ImageView 未做处理理，后⾯面课程会介绍
        itemViewHolder.textView1.setText(dataItem.getText1());
        itemViewHolder.textView2.setText(dataItem.getText2());




    }




    @Override
    public int getItemCount() {
        return dataItemList.size();
//        默认是0，只能传0条数据
    }
}
